New Case Study:See how Anthropic automated 95% of dependency reviews with Socket.Learn More
Socket
Sign inDemoInstall
Socket

@allmaps/id

Package Overview
Dependencies
Maintainers
0
Versions
40
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@allmaps/id

IDs for Allmaps

  • 1.0.0-beta.30
  • latest
  • Source
  • npm
  • Socket score

Version published
Maintainers
0
Created
Source

@allmaps/id

Uses the SHA-1 algorithm to generate IDs from strings, random IDs from UUIDs and checksums from JSON objects.

Allmaps uses this module to create IDs from IIIF URIs. For example:

To see @allmaps/id in action, view this Observable notebook.

Usage

This is an ESM-only module that works in browsers and Node.js.

Node.js:

The Node.js version of @allmaps/id usescrypto.createHash() and crypto.randomUUID() from the crypto module. First, run npm install @allmaps/id.

import { generateId } from '@allmaps/id'
const url = 'https://digital.zlb.de/viewer/api/v1/records/34231682/manifest/'
const id = await generateId(url)
// id = '6f5a7b547c8f6fbe'

Browser:

The browser version of @allmaps/id uses the SubtleCrypto.digest() and Crypto.randomUUID() Web APIs.

<script type="module">
  import { generateId } from 'https://esm.run/@allmaps/id'

  const url =
    'https://orka.bibliothek.uni-kassel.de/viewer/rest/iiif/manifests/1535113582549/manifest/'
  const id = await generateId(url)
  console.log(id)
</script>

CLI

Generating Allmaps IDs is also possible using the Allmaps CLI.

For example:

echo https://digital.zlb.de/viewer/api/v1/records/34231682/manifest/ | allmaps id

API

Table of Contents

generateHash

Computes SHA-1 hash of input string.

Parameters

Returns string SHA-1 hash of str.

generateId

Generates an ID from a string using the SHA-1 algorithm. Given the same input, the ID will always be the same.

Parameters
  • str string Input string.
  • length number? Length of returned hash. The maximum length of the hash is 40 characters. The default length is 16. (optional, default 16)

Returns Promise<string> First length characters of the SHA-1 hash of str.

generateRandomId

Generates a random ID.

Parameters
  • length number? Length of returned hash. The maximum length of the hash is 40 characters.

Returns Promise<string> First length characters of the SHA-1 hash of a random UUID.

generateChecksum

Generates a checksum of a JSON object.

Parameters
  • obj Object JSON object.
  • length number? Length of returned hash. The maximum length of the hash is 40 characters.

Returns Promise<string> First length characters of the SHA-1 hash of sorted and serialized version of obj.

Keywords

FAQs

Package last updated on 31 Oct 2024

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc